package com.shujia.day05;


/*
    静态static修饰成员方法的特点：
        1、是随着类的加载而加载到方法区中的静态区中
        2、将来可以通过对象.成员变量名进行调用,同时也可以通过类名称.成员变量来进行调用，推荐使用 类名称.成员变量
        3、静态的成员方法，可以调用静态的成员
        4、非静态的成员方法，可以访问静态的成员变量也可以访问非静态的成员，对于非静态的成源不能在静态方法中进行调用
 */
class StaticTest{
    static int a; // 属于类的称为类变量
    int b; //非静态的 属于对象
}

public class Code06StaticDemo {
    public static void main(String[] args) {
        StaticTest staticTest1 = new StaticTest();
        staticTest1.a = 100;
        StaticTest staticTest2 = new StaticTest();
        staticTest2.a = 10;
        System.out.println(staticTest1.a);
        System.out.println(staticTest2.a);

        // 通过类名进行调用
        System.out.println(StaticTest.a);

        new Code06StaticDemo().printA();

//        System.out.println(StaticTest.b);  // 静态方法中不能直接调用非静态的成员变量
    }

    public void printA(){
        System.out.println(StaticTest.a);
    }
}
